<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>

</body>
<script>
    // 字符串的特性(基本同数组)
    // (1) 有length属性,表长度(字符串中字符的个数)
    // (2) 可以对应下标取值,但是不能通过下标赋值(官方规定 => 不会影响原字符串,注意:字符串的所有方法都不会影响原字符串, 如需修改,返回修改后的新字符串)  => 下标的最大值 = 字符串.length - 1 
    // (3) 可以被循环遍历  for  for...in  for...of

    // 注意: 字符串的所有方法都不会影响原字符串, 如需修改,返回修改后的新字符串

    var str = new String("hello world");
    console.log(str);

    console.log(str.length);

    // 下标取值
    // console.log(str[4]);  // "o"
    // console.log(str[100]); // undefined

    // 下标赋值 (无效)
    // str[4]="O";
    // console.log(str);

    // for(var i = 0;i<str.length;i++){
    //     console.log(i,str[i]);
    // }

    // for (var i in str) {
    //     console.log(i, str[i]);
    // }

    // for (var val of str) {
    //     console.log(val);
    // }

    // 字符串无法直接使用数组的遍历方法 forEach map 
    str.forEach(function(item,index){
        console.log(item,index);
    })

</script>

</html>